package com.sdweizan.sdk.bytedance.bean.schema;

import com.alibaba.fastjson.annotation.JSONField;
import com.sdweizan.sdk.bytedance.bean.BdBaseRequest;
import com.sdweizan.sdk.bytedance.constants.BdConstants;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BdUrlLinkGenerateRequest implements BdBaseRequest {

  /** 宿主名称 不能是中文 例如 douyin */
  @JSONField(name = "app_name")
  private String appName;

  /** 小程序ID */
  @JSONField(name = "app_id")
  private String appId;

  /** 小程序页面路径 不能以/开始 例如 pages/mall/bytedance/index */
  @JSONField(name = "path")
  private String path;

  @JSONField(name = "query")
  private String query;

  /** 时间为到期日的unix时间戳，比如设置2024年1月14日过期，就用2024年1月14日的时间戳，过期时间最多180天 */
  @JSONField(name = "expire_time")
  private int expireTime;

  @Override
  public String requestUri() {
    return BdConstants.OPEN_HOST + "/api/apps/v1/url_link/generate";
  }
}
